<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X1VBUElfTElOVVhfVElNRV9IXzA_"><span class="b">_UAPI_LINUX_TIME_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X1VBUElfTElOVVhfVElNRV9IXzA_"><span class="b">_UAPI_LINUX_TIME_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="5" /><span class="True">       5:</span> 
<a name="6" /><span class="True">       6:</span> 
<a name="7" /><span class="False">       7:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X1NUUlVDVF9USU1FU1BFQ18w"><span class="b">_STRUCT_TIMESPEC</span></a>
<a name="8" /><span class="False">       8:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X1NUUlVDVF9USU1FU1BFQ18w"><span class="b">_STRUCT_TIMESPEC</span></a>
<a name="9" /><span class="False">       9:</span> <span class="m">struct</span> <span class="b">timespec</span> <span class="f">{</span>
<a name="10" /><span class="False">      10:</span>     <span class="b">__kernel_time_t</span>    <span class="b">tv_sec</span><span class="f">;</span>            <span class="k">/* seconds */</span>
<a name="11" /><span class="False">      11:</span>     <span class="m">long</span>        <span class="b">tv_nsec</span><span class="f">;</span>        <span class="k">/* nanoseconds */</span>
<a name="12" /><span class="False">      12:</span> <span class="f">}</span><span class="f">;</span>
<a name="13" /><span class="True">      13:</span> <span class="f">#</span><span class="n">endif</span>
<a name="14" /><span class="True">      14:</span> 
<a name="15" /><span class="True">      15:</span> <span class="m">struct</span> <span class="b">timeval</span> <span class="f">{</span>
<a name="16" /><span class="True">      16:</span>     <span class="b">__kernel_time_t</span>        <span class="b">tv_sec</span><span class="f">;</span>        <span class="k">/* seconds */</span>
<a name="17" /><span class="True">      17:</span>     <span class="b">__kernel_suseconds_t</span>    <span class="b">tv_usec</span><span class="f">;</span>    <span class="k">/* microseconds */</span>
<a name="18" /><span class="True">      18:</span> <span class="f">}</span><span class="f">;</span>
<a name="19" /><span class="True">      19:</span> 
<a name="20" /><span class="True">      20:</span> <span class="m">struct</span> <span class="b">timezone</span> <span class="f">{</span>
<a name="21" /><span class="True">      21:</span>     <span class="m">int</span>    <span class="b">tz_minuteswest</span><span class="f">;</span>    <span class="k">/* minutes west of Greenwich */</span>
<a name="22" /><span class="True">      22:</span>     <span class="m">int</span>    <span class="b">tz_dsttime</span><span class="f">;</span>    <span class="k">/* type of dst correction */</span>
<a name="23" /><span class="True">      23:</span> <span class="f">}</span><span class="f">;</span>
<a name="24" /><span class="True">      24:</span> 
<a name="25" /><span class="True">      25:</span> 
<a name="26" /><span class="True">      26:</span> <span class="k">/*</span>
<a name="27" /><span class="True">      27:</span> <span class="k"> * Names of the interval timers, and structure</span>
<a name="28" /><span class="True">      28:</span> <span class="k"> * defining a timer setting:</span>
<a name="29" /><span class="True">      29:</span> <span class="k"> */</span>
<a name="30" /><span class="True">      30:</span> <span class="f">#</span><span class="n">define</span>    <a href="cpu.c_macros_noref.html#_SVRJTUVSX1JFQUxfMA__"><span class="b">ITIMER_REAL</span></a>        <span class="c">0</span>
<a name="31" /><span class="True">      31:</span> <span class="f">#</span><span class="n">define</span>    <a href="cpu.c_macros_noref.html#_SVRJTUVSX1ZJUlRVQUxfMA__"><span class="b">ITIMER_VIRTUAL</span></a>        <span class="c">1</span>
<a name="32" /><span class="True">      32:</span> <span class="f">#</span><span class="n">define</span>    <a href="cpu.c_macros_noref.html#_SVRJTUVSX1BST0ZfMA__"><span class="b">ITIMER_PROF</span></a>        <span class="c">2</span>
<a name="33" /><span class="True">      33:</span> 
<a name="34" /><span class="True">      34:</span> <span class="m">struct</span> <span class="b">itimerspec</span> <span class="f">{</span>
<a name="35" /><span class="True">      35:</span>     <span class="m">struct</span> <span class="b">timespec</span> <span class="b">it_interval</span><span class="f">;</span>    <span class="k">/* timer period */</span>
<a name="36" /><span class="True">      36:</span>     <span class="m">struct</span> <span class="b">timespec</span> <span class="b">it_value</span><span class="f">;</span>    <span class="k">/* timer expiration */</span>
<a name="37" /><span class="True">      37:</span> <span class="f">}</span><span class="f">;</span>
<a name="38" /><span class="True">      38:</span> 
<a name="39" /><span class="True">      39:</span> <span class="m">struct</span> <span class="b">itimerval</span> <span class="f">{</span>
<a name="40" /><span class="True">      40:</span>     <span class="m">struct</span> <span class="b">timeval</span> <span class="b">it_interval</span><span class="f">;</span>    <span class="k">/* timer interval */</span>
<a name="41" /><span class="True">      41:</span>     <span class="m">struct</span> <span class="b">timeval</span> <span class="b">it_value</span><span class="f">;</span>    <span class="k">/* current value */</span>
<a name="42" /><span class="True">      42:</span> <span class="f">}</span><span class="f">;</span>
<a name="43" /><span class="True">      43:</span> 
<a name="44" /><span class="True">      44:</span> <span class="k">/*</span>
<a name="45" /><span class="True">      45:</span> <span class="k"> * The IDs of the various system clocks (for POSIX.1b interval timers):</span>
<a name="46" /><span class="True">      46:</span> <span class="k"> */</span>
<a name="47" /><span class="True">      47:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfUkVBTFRJTUVfMA__"><span class="b">CLOCK_REALTIME</span></a>            <span class="c">0</span>
<a name="48" /><span class="True">      48:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfTU9OT1RPTklDXzA_"><span class="b">CLOCK_MONOTONIC</span></a>            <span class="c">1</span>
<a name="49" /><span class="True">      49:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfUFJPQ0VTU19DUFVUSU1FX0lEXzA_"><span class="b">CLOCK_PROCESS_CPUTIME_ID</span></a>    <span class="c">2</span>
<a name="50" /><span class="True">      50:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfVEhSRUFEX0NQVVRJTUVfSURfMA__"><span class="b">CLOCK_THREAD_CPUTIME_ID</span></a>        <span class="c">3</span>
<a name="51" /><span class="True">      51:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfTU9OT1RPTklDX1JBV18w"><span class="b">CLOCK_MONOTONIC_RAW</span></a>        <span class="c">4</span>
<a name="52" /><span class="True">      52:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfUkVBTFRJTUVfQ09BUlNFXzA_"><span class="b">CLOCK_REALTIME_COARSE</span></a>        <span class="c">5</span>
<a name="53" /><span class="True">      53:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfTU9OT1RPTklDX0NPQVJTRV8w"><span class="b">CLOCK_MONOTONIC_COARSE</span></a>        <span class="c">6</span>
<a name="54" /><span class="True">      54:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfQk9PVFRJTUVfMA__"><span class="b">CLOCK_BOOTTIME</span></a>            <span class="c">7</span>
<a name="55" /><span class="True">      55:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfUkVBTFRJTUVfQUxBUk1fMA__"><span class="b">CLOCK_REALTIME_ALARM</span></a>        <span class="c">8</span>
<a name="56" /><span class="True">      56:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfQk9PVFRJTUVfQUxBUk1fMA__"><span class="b">CLOCK_BOOTTIME_ALARM</span></a>        <span class="c">9</span>
<a name="57" /><span class="True">      57:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfU0dJX0NZQ0xFXzA_"><span class="b">CLOCK_SGI_CYCLE</span></a>            <span class="c">10</span>    <span class="k">/* Hardware specific */</span>
<a name="58" /><span class="True">      58:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfVEFJXzA_"><span class="b">CLOCK_TAI</span></a>            <span class="c">11</span>
<a name="59" /><span class="True">      59:</span> 
<a name="60" /><span class="True">      60:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TUFYX0NMT0NLU18w"><span class="b">MAX_CLOCKS</span></a>            <span class="c">16</span>
<a name="61" /><span class="True">      61:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tTX01BU0tfMA__"><span class="b">CLOCKS_MASK</span></a>            <span class="f">(</span><a href="cpu.c_macros_noref.html#_Q0xPQ0tfUkVBTFRJTUVfMA__"><span class="b">CLOCK_REALTIME</span></a> <span class="f">|</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tfTU9OT1RPTklDXzA_"><span class="b">CLOCK_MONOTONIC</span></a><span class="f">)</span>
<a name="62" /><span class="True">      62:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xPQ0tTX01PTk9fMA__"><span class="b">CLOCKS_MONO</span></a>            <a href="cpu.c_macros_noref.html#_Q0xPQ0tfTU9OT1RPTklDXzA_"><span class="b">CLOCK_MONOTONIC</span></a>
<a name="63" /><span class="True">      63:</span> 
<a name="64" /><span class="True">      64:</span> <span class="k">/*</span>
<a name="65" /><span class="True">      65:</span> <span class="k"> * The various flags for setting POSIX.1b interval timers:</span>
<a name="66" /><span class="True">      66:</span> <span class="k"> */</span>
<a name="67" /><span class="True">      67:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_VElNRVJfQUJTVElNRV8w"><span class="b">TIMER_ABSTIME</span></a>            <span class="c">0x01</span>
<a name="68" /><span class="True">      68:</span> 
<a name="69" /><span class="True">      69:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _UAPI_LINUX_TIME_H */</span>
<a name="70" /><span class="True">      70:</span> </pre>
  </body>
</html>
